module.exports = {
    mode: 'development',
    context: '/Users/marcuswang/Desktop/vue/mobile_pro',
    node: {
        setImmediate: false,
        process: 'mock',
        dgram: 'empty',
        fs: 'empty',
        net: 'empty',
        tls: 'empty',
        child_process: 'empty'
    },
    output: {
        path: '/Users/marcuswang/Desktop/vue/mobile_pro/dist',
        filename: 'js/[name].js',
        publicPath: '/',
        chunkFilename: 'js/[name].js'
    },
    resolve: {
        alias: {
            '@': '/Users/marcuswang/Desktop/vue/mobile_pro/src',
            vue$: 'vue/dist/vue.runtime.esm.js'
        },
        extensions: [
            '.mjs',
            '.js',
            '.jsx',
            '.vue',
            '.json',
            '.wasm'
        ],
        modules: [
            'node_modules',
            '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules',
            '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/@vue/cli-service/node_modules'
        ]
    },
    resolveLoader: {
        modules: [
            '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/@vue/cli-plugin-babel/node_modules',
            'node_modules',
            '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules',
            '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/@vue/cli-service/node_modules'
        ]
    },
    module: {
        noParse: /^(vue|vue-router|vuex|vuex-router-sync)$/,
        rules: [
            /* config.module.rule('vue') */
            {
                test: /\.vue$/,
                use: [
                    /* config.module.rule('vue').use('cache-loader') */
                    {
                        loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/cache-loader/dist/cjs.js',
                        options: {
                            cacheDirectory: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/.cache/vue-loader',
                            cacheIdentifier: '0a475c66'
                        }
                    },
                    /* config.module.rule('vue').use('vue-loader') */
                    {
                        loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/vue-loader/lib/index.js',
                        options: {
                            compilerOptions: {
                                whitespace: 'condense'
                            },
                            cacheDirectory: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/.cache/vue-loader',
                            cacheIdentifier: '0a475c66'
                        }
                    }
                ]
            },
            /* config.module.rule('images') */
            {
                test: /\.(png|jpe?g|gif|webp)(\?.*)?$/,
                use: [
                    /* config.module.rule('images').use('url-loader') */
                    {
                        loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/url-loader/dist/cjs.js',
                        options: {
                            limit: 4096,
                            fallback: {
                                loader: 'file-loader',
                                options: {
                                    name: 'img/[name].[hash:8].[ext]'
                                }
                            }
                        }
                    }
                ]
            },
            /* config.module.rule('svg') */
            {
                test: /\.(svg)(\?.*)?$/,
                use: [
                    /* config.module.rule('svg').use('file-loader') */
                    {
                        loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/file-loader/dist/cjs.js',
                        options: {
                            name: 'img/[name].[hash:8].[ext]'
                        }
                    }
                ]
            },
            /* config.module.rule('media') */
            {
                test: /\.(mp4|webm|ogg|mp3|wav|flac|aac)(\?.*)?$/,
                use: [
                    /* config.module.rule('media').use('url-loader') */
                    {
                        loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/url-loader/dist/cjs.js',
                        options: {
                            limit: 4096,
                            fallback: {
                                loader: 'file-loader',
                                options: {
                                    name: 'media/[name].[hash:8].[ext]'
                                }
                            }
                        }
                    }
                ]
            },
            /* config.module.rule('fonts') */
            {
                test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/i,
                use: [
                    /* config.module.rule('fonts').use('url-loader') */
                    {
                        loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/url-loader/dist/cjs.js',
                        options: {
                            limit: 4096,
                            fallback: {
                                loader: 'file-loader',
                                options: {
                                    name: 'fonts/[name].[hash:8].[ext]'
                                }
                            }
                        }
                    }
                ]
            },
            /* config.module.rule('pug') */
            {
                test: /\.pug$/,
                oneOf: [
                    /* config.module.rule('pug').oneOf('pug-vue') */
                    {
                        resourceQuery: /vue/,
                        use: [
                            /* config.module.rule('pug').oneOf('pug-vue').use('pug-plain-loader') */
                            {
                                loader: 'pug-plain-loader'
                            }
                        ]
                    },
                    /* config.module.rule('pug').oneOf('pug-template') */
                    {
                        use: [
                            /* config.module.rule('pug').oneOf('pug-template').use('raw') */
                            {
                                loader: 'raw-loader'
                            },
                            /* config.module.rule('pug').oneOf('pug-template').use('pug-plain-loader') */
                            {
                                loader: 'pug-plain-loader'
                            }
                        ]
                    }
                ]
            },
            /* config.module.rule('css') */
            {
                test: /\.css$/,
                oneOf: [
                    /* config.module.rule('css').oneOf('vue-modules') */
                    {
                        resourceQuery: /module/,
                        use: [
                            /* config.module.rule('css').oneOf('vue-modules').use('vue-style-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/vue-style-loader/index.js',
                                options: {
                                    sourceMap: false,
                                    shadowMode: false
                                }
                            },
                            /* config.module.rule('css').oneOf('vue-modules').use('css-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/css-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false,
                                    importLoaders: 2,
                                    modules: {
                                        localIdentName: '[name]_[local]_[hash:base64:5]'
                                    }
                                }
                            },
                            /* config.module.rule('css').oneOf('vue-modules').use('postcss-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/postcss-loader/src/index.js',
                                options: {
                                    sourceMap: false,
                                    plugins: [
                                        function() { /* omitted long function */ }
                                    ]
                                }
                            }
                        ]
                    },
                    /* config.module.rule('css').oneOf('vue') */
                    {
                        resourceQuery: /\?vue/,
                        use: [
                            /* config.module.rule('css').oneOf('vue').use('vue-style-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/vue-style-loader/index.js',
                                options: {
                                    sourceMap: false,
                                    shadowMode: false
                                }
                            },
                            /* config.module.rule('css').oneOf('vue').use('css-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/css-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false,
                                    importLoaders: 2
                                }
                            },
                            /* config.module.rule('css').oneOf('vue').use('postcss-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/postcss-loader/src/index.js',
                                options: {
                                    sourceMap: false,
                                    plugins: [
                                        function() { /* omitted long function */ }
                                    ]
                                }
                            }
                        ]
                    },
                    /* config.module.rule('css').oneOf('normal-modules') */
                    {
                        test: /\.module\.\w+$/,
                        use: [
                            /* config.module.rule('css').oneOf('normal-modules').use('vue-style-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/vue-style-loader/index.js',
                                options: {
                                    sourceMap: false,
                                    shadowMode: false
                                }
                            },
                            /* config.module.rule('css').oneOf('normal-modules').use('css-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/css-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false,
                                    importLoaders: 2,
                                    modules: {
                                        localIdentName: '[name]_[local]_[hash:base64:5]'
                                    }
                                }
                            },
                            /* config.module.rule('css').oneOf('normal-modules').use('postcss-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/postcss-loader/src/index.js',
                                options: {
                                    sourceMap: false,
                                    plugins: [
                                        function() { /* omitted long function */ }
                                    ]
                                }
                            }
                        ]
                    },
                    /* config.module.rule('css').oneOf('normal') */
                    {
                        use: [
                            /* config.module.rule('css').oneOf('normal').use('vue-style-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/vue-style-loader/index.js',
                                options: {
                                    sourceMap: false,
                                    shadowMode: false
                                }
                            },
                            /* config.module.rule('css').oneOf('normal').use('css-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/css-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false,
                                    importLoaders: 2
                                }
                            },
                            /* config.module.rule('css').oneOf('normal').use('postcss-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/postcss-loader/src/index.js',
                                options: {
                                    sourceMap: false,
                                    plugins: [
                                        function() { /* omitted long function */ }
                                    ]
                                }
                            }
                        ]
                    }
                ]
            },
            /* config.module.rule('postcss') */
            {
                test: /\.p(ost)?css$/,
                oneOf: [
                    /* config.module.rule('postcss').oneOf('vue-modules') */
                    {
                        resourceQuery: /module/,
                        use: [
                            /* config.module.rule('postcss').oneOf('vue-modules').use('vue-style-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/vue-style-loader/index.js',
                                options: {
                                    sourceMap: false,
                                    shadowMode: false
                                }
                            },
                            /* config.module.rule('postcss').oneOf('vue-modules').use('css-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/css-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false,
                                    importLoaders: 2,
                                    modules: {
                                        localIdentName: '[name]_[local]_[hash:base64:5]'
                                    }
                                }
                            },
                            /* config.module.rule('postcss').oneOf('vue-modules').use('postcss-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/postcss-loader/src/index.js',
                                options: {
                                    sourceMap: false,
                                    plugins: [
                                        function() { /* omitted long function */ }
                                    ]
                                }
                            }
                        ]
                    },
                    /* config.module.rule('postcss').oneOf('vue') */
                    {
                        resourceQuery: /\?vue/,
                        use: [
                            /* config.module.rule('postcss').oneOf('vue').use('vue-style-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/vue-style-loader/index.js',
                                options: {
                                    sourceMap: false,
                                    shadowMode: false
                                }
                            },
                            /* config.module.rule('postcss').oneOf('vue').use('css-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/css-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false,
                                    importLoaders: 2
                                }
                            },
                            /* config.module.rule('postcss').oneOf('vue').use('postcss-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/postcss-loader/src/index.js',
                                options: {
                                    sourceMap: false,
                                    plugins: [
                                        function() { /* omitted long function */ }
                                    ]
                                }
                            }
                        ]
                    },
                    /* config.module.rule('postcss').oneOf('normal-modules') */
                    {
                        test: /\.module\.\w+$/,
                        use: [
                            /* config.module.rule('postcss').oneOf('normal-modules').use('vue-style-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/vue-style-loader/index.js',
                                options: {
                                    sourceMap: false,
                                    shadowMode: false
                                }
                            },
                            /* config.module.rule('postcss').oneOf('normal-modules').use('css-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/css-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false,
                                    importLoaders: 2,
                                    modules: {
                                        localIdentName: '[name]_[local]_[hash:base64:5]'
                                    }
                                }
                            },
                            /* config.module.rule('postcss').oneOf('normal-modules').use('postcss-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/postcss-loader/src/index.js',
                                options: {
                                    sourceMap: false,
                                    plugins: [
                                        function() { /* omitted long function */ }
                                    ]
                                }
                            }
                        ]
                    },
                    /* config.module.rule('postcss').oneOf('normal') */
                    {
                        use: [
                            /* config.module.rule('postcss').oneOf('normal').use('vue-style-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/vue-style-loader/index.js',
                                options: {
                                    sourceMap: false,
                                    shadowMode: false
                                }
                            },
                            /* config.module.rule('postcss').oneOf('normal').use('css-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/css-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false,
                                    importLoaders: 2
                                }
                            },
                            /* config.module.rule('postcss').oneOf('normal').use('postcss-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/postcss-loader/src/index.js',
                                options: {
                                    sourceMap: false,
                                    plugins: [
                                        function() { /* omitted long function */ }
                                    ]
                                }
                            }
                        ]
                    }
                ]
            },
            /* config.module.rule('scss') */
            {
                test: /\.scss$/,
                oneOf: [
                    /* config.module.rule('scss').oneOf('vue-modules') */
                    {
                        resourceQuery: /module/,
                        use: [
                            /* config.module.rule('scss').oneOf('vue-modules').use('vue-style-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/vue-style-loader/index.js',
                                options: {
                                    sourceMap: false,
                                    shadowMode: false
                                }
                            },
                            /* config.module.rule('scss').oneOf('vue-modules').use('css-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/css-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false,
                                    importLoaders: 2,
                                    modules: {
                                        localIdentName: '[name]_[local]_[hash:base64:5]'
                                    }
                                }
                            },
                            /* config.module.rule('scss').oneOf('vue-modules').use('postcss-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/postcss-loader/src/index.js',
                                options: {
                                    sourceMap: false,
                                    plugins: [
                                        function() { /* omitted long function */ }
                                    ]
                                }
                            },
                            /* config.module.rule('scss').oneOf('vue-modules').use('sass-loader') */
                            {
                                loader: 'sass-loader',
                                options: {
                                    sourceMap: false
                                }
                            }
                        ]
                    },
                    /* config.module.rule('scss').oneOf('vue') */
                    {
                        resourceQuery: /\?vue/,
                        use: [
                            /* config.module.rule('scss').oneOf('vue').use('vue-style-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/vue-style-loader/index.js',
                                options: {
                                    sourceMap: false,
                                    shadowMode: false
                                }
                            },
                            /* config.module.rule('scss').oneOf('vue').use('css-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/css-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false,
                                    importLoaders: 2
                                }
                            },
                            /* config.module.rule('scss').oneOf('vue').use('postcss-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/postcss-loader/src/index.js',
                                options: {
                                    sourceMap: false,
                                    plugins: [
                                        function() { /* omitted long function */ }
                                    ]
                                }
                            },
                            /* config.module.rule('scss').oneOf('vue').use('sass-loader') */
                            {
                                loader: 'sass-loader',
                                options: {
                                    sourceMap: false
                                }
                            }
                        ]
                    },
                    /* config.module.rule('scss').oneOf('normal-modules') */
                    {
                        test: /\.module\.\w+$/,
                        use: [
                            /* config.module.rule('scss').oneOf('normal-modules').use('vue-style-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/vue-style-loader/index.js',
                                options: {
                                    sourceMap: false,
                                    shadowMode: false
                                }
                            },
                            /* config.module.rule('scss').oneOf('normal-modules').use('css-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/css-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false,
                                    importLoaders: 2,
                                    modules: {
                                        localIdentName: '[name]_[local]_[hash:base64:5]'
                                    }
                                }
                            },
                            /* config.module.rule('scss').oneOf('normal-modules').use('postcss-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/postcss-loader/src/index.js',
                                options: {
                                    sourceMap: false,
                                    plugins: [
                                        function() { /* omitted long function */ }
                                    ]
                                }
                            },
                            /* config.module.rule('scss').oneOf('normal-modules').use('sass-loader') */
                            {
                                loader: 'sass-loader',
                                options: {
                                    sourceMap: false
                                }
                            }
                        ]
                    },
                    /* config.module.rule('scss').oneOf('normal') */
                    {
                        use: [
                            /* config.module.rule('scss').oneOf('normal').use('vue-style-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/vue-style-loader/index.js',
                                options: {
                                    sourceMap: false,
                                    shadowMode: false
                                }
                            },
                            /* config.module.rule('scss').oneOf('normal').use('css-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/css-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false,
                                    importLoaders: 2
                                }
                            },
                            /* config.module.rule('scss').oneOf('normal').use('postcss-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/postcss-loader/src/index.js',
                                options: {
                                    sourceMap: false,
                                    plugins: [
                                        function() { /* omitted long function */ }
                                    ]
                                }
                            },
                            /* config.module.rule('scss').oneOf('normal').use('sass-loader') */
                            {
                                loader: 'sass-loader',
                                options: {
                                    sourceMap: false
                                }
                            }
                        ]
                    }
                ]
            },
            /* config.module.rule('sass') */
            {
                test: /\.sass$/,
                oneOf: [
                    /* config.module.rule('sass').oneOf('vue-modules') */
                    {
                        resourceQuery: /module/,
                        use: [
                            /* config.module.rule('sass').oneOf('vue-modules').use('vue-style-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/vue-style-loader/index.js',
                                options: {
                                    sourceMap: false,
                                    shadowMode: false
                                }
                            },
                            /* config.module.rule('sass').oneOf('vue-modules').use('css-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/css-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false,
                                    importLoaders: 2,
                                    modules: {
                                        localIdentName: '[name]_[local]_[hash:base64:5]'
                                    }
                                }
                            },
                            /* config.module.rule('sass').oneOf('vue-modules').use('postcss-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/postcss-loader/src/index.js',
                                options: {
                                    sourceMap: false,
                                    plugins: [
                                        function() { /* omitted long function */ }
                                    ]
                                }
                            },
                            /* config.module.rule('sass').oneOf('vue-modules').use('sass-loader') */
                            {
                                loader: 'sass-loader',
                                options: {
                                    sourceMap: false,
                                    sassOptions: {
                                        indentedSyntax: true
                                    }
                                }
                            }
                        ]
                    },
                    /* config.module.rule('sass').oneOf('vue') */
                    {
                        resourceQuery: /\?vue/,
                        use: [
                            /* config.module.rule('sass').oneOf('vue').use('vue-style-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/vue-style-loader/index.js',
                                options: {
                                    sourceMap: false,
                                    shadowMode: false
                                }
                            },
                            /* config.module.rule('sass').oneOf('vue').use('css-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/css-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false,
                                    importLoaders: 2
                                }
                            },
                            /* config.module.rule('sass').oneOf('vue').use('postcss-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/postcss-loader/src/index.js',
                                options: {
                                    sourceMap: false,
                                    plugins: [
                                        function() { /* omitted long function */ }
                                    ]
                                }
                            },
                            /* config.module.rule('sass').oneOf('vue').use('sass-loader') */
                            {
                                loader: 'sass-loader',
                                options: {
                                    sourceMap: false,
                                    sassOptions: {
                                        indentedSyntax: true
                                    }
                                }
                            }
                        ]
                    },
                    /* config.module.rule('sass').oneOf('normal-modules') */
                    {
                        test: /\.module\.\w+$/,
                        use: [
                            /* config.module.rule('sass').oneOf('normal-modules').use('vue-style-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/vue-style-loader/index.js',
                                options: {
                                    sourceMap: false,
                                    shadowMode: false
                                }
                            },
                            /* config.module.rule('sass').oneOf('normal-modules').use('css-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/css-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false,
                                    importLoaders: 2,
                                    modules: {
                                        localIdentName: '[name]_[local]_[hash:base64:5]'
                                    }
                                }
                            },
                            /* config.module.rule('sass').oneOf('normal-modules').use('postcss-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/postcss-loader/src/index.js',
                                options: {
                                    sourceMap: false,
                                    plugins: [
                                        function() { /* omitted long function */ }
                                    ]
                                }
                            },
                            /* config.module.rule('sass').oneOf('normal-modules').use('sass-loader') */
                            {
                                loader: 'sass-loader',
                                options: {
                                    sourceMap: false,
                                    sassOptions: {
                                        indentedSyntax: true
                                    }
                                }
                            }
                        ]
                    },
                    /* config.module.rule('sass').oneOf('normal') */
                    {
                        use: [
                            /* config.module.rule('sass').oneOf('normal').use('vue-style-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/vue-style-loader/index.js',
                                options: {
                                    sourceMap: false,
                                    shadowMode: false
                                }
                            },
                            /* config.module.rule('sass').oneOf('normal').use('css-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/css-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false,
                                    importLoaders: 2
                                }
                            },
                            /* config.module.rule('sass').oneOf('normal').use('postcss-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/postcss-loader/src/index.js',
                                options: {
                                    sourceMap: false,
                                    plugins: [
                                        function() { /* omitted long function */ }
                                    ]
                                }
                            },
                            /* config.module.rule('sass').oneOf('normal').use('sass-loader') */
                            {
                                loader: 'sass-loader',
                                options: {
                                    sourceMap: false,
                                    sassOptions: {
                                        indentedSyntax: true
                                    }
                                }
                            }
                        ]
                    }
                ]
            },
            /* config.module.rule('less') */
            {
                test: /\.less$/,
                oneOf: [
                    /* config.module.rule('less').oneOf('vue-modules') */
                    {
                        resourceQuery: /module/,
                        use: [
                            /* config.module.rule('less').oneOf('vue-modules').use('vue-style-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/vue-style-loader/index.js',
                                options: {
                                    sourceMap: false,
                                    shadowMode: false
                                }
                            },
                            /* config.module.rule('less').oneOf('vue-modules').use('css-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/css-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false,
                                    importLoaders: 2,
                                    modules: {
                                        localIdentName: '[name]_[local]_[hash:base64:5]'
                                    }
                                }
                            },
                            /* config.module.rule('less').oneOf('vue-modules').use('postcss-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/postcss-loader/src/index.js',
                                options: {
                                    sourceMap: false,
                                    plugins: [
                                        function() { /* omitted long function */ }
                                    ]
                                }
                            },
                            /* config.module.rule('less').oneOf('vue-modules').use('less-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/less-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false
                                }
                            }
                        ]
                    },
                    /* config.module.rule('less').oneOf('vue') */
                    {
                        resourceQuery: /\?vue/,
                        use: [
                            /* config.module.rule('less').oneOf('vue').use('vue-style-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/vue-style-loader/index.js',
                                options: {
                                    sourceMap: false,
                                    shadowMode: false
                                }
                            },
                            /* config.module.rule('less').oneOf('vue').use('css-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/css-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false,
                                    importLoaders: 2
                                }
                            },
                            /* config.module.rule('less').oneOf('vue').use('postcss-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/postcss-loader/src/index.js',
                                options: {
                                    sourceMap: false,
                                    plugins: [
                                        function() { /* omitted long function */ }
                                    ]
                                }
                            },
                            /* config.module.rule('less').oneOf('vue').use('less-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/less-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false
                                }
                            }
                        ]
                    },
                    /* config.module.rule('less').oneOf('normal-modules') */
                    {
                        test: /\.module\.\w+$/,
                        use: [
                            /* config.module.rule('less').oneOf('normal-modules').use('vue-style-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/vue-style-loader/index.js',
                                options: {
                                    sourceMap: false,
                                    shadowMode: false
                                }
                            },
                            /* config.module.rule('less').oneOf('normal-modules').use('css-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/css-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false,
                                    importLoaders: 2,
                                    modules: {
                                        localIdentName: '[name]_[local]_[hash:base64:5]'
                                    }
                                }
                            },
                            /* config.module.rule('less').oneOf('normal-modules').use('postcss-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/postcss-loader/src/index.js',
                                options: {
                                    sourceMap: false,
                                    plugins: [
                                        function() { /* omitted long function */ }
                                    ]
                                }
                            },
                            /* config.module.rule('less').oneOf('normal-modules').use('less-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/less-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false
                                }
                            }
                        ]
                    },
                    /* config.module.rule('less').oneOf('normal') */
                    {
                        use: [
                            /* config.module.rule('less').oneOf('normal').use('vue-style-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/vue-style-loader/index.js',
                                options: {
                                    sourceMap: false,
                                    shadowMode: false
                                }
                            },
                            /* config.module.rule('less').oneOf('normal').use('css-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/css-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false,
                                    importLoaders: 2
                                }
                            },
                            /* config.module.rule('less').oneOf('normal').use('postcss-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/postcss-loader/src/index.js',
                                options: {
                                    sourceMap: false,
                                    plugins: [
                                        function() { /* omitted long function */ }
                                    ]
                                }
                            },
                            /* config.module.rule('less').oneOf('normal').use('less-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/less-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false
                                }
                            }
                        ]
                    }
                ]
            },
            /* config.module.rule('stylus') */
            {
                test: /\.styl(us)?$/,
                oneOf: [
                    /* config.module.rule('stylus').oneOf('vue-modules') */
                    {
                        resourceQuery: /module/,
                        use: [
                            /* config.module.rule('stylus').oneOf('vue-modules').use('vue-style-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/vue-style-loader/index.js',
                                options: {
                                    sourceMap: false,
                                    shadowMode: false
                                }
                            },
                            /* config.module.rule('stylus').oneOf('vue-modules').use('css-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/css-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false,
                                    importLoaders: 2,
                                    modules: {
                                        localIdentName: '[name]_[local]_[hash:base64:5]'
                                    }
                                }
                            },
                            /* config.module.rule('stylus').oneOf('vue-modules').use('postcss-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/postcss-loader/src/index.js',
                                options: {
                                    sourceMap: false,
                                    plugins: [
                                        function() { /* omitted long function */ }
                                    ]
                                }
                            },
                            /* config.module.rule('stylus').oneOf('vue-modules').use('stylus-loader') */
                            {
                                loader: 'stylus-loader',
                                options: {
                                    sourceMap: false,
                                    preferPathResolver: 'webpack'
                                }
                            }
                        ]
                    },
                    /* config.module.rule('stylus').oneOf('vue') */
                    {
                        resourceQuery: /\?vue/,
                        use: [
                            /* config.module.rule('stylus').oneOf('vue').use('vue-style-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/vue-style-loader/index.js',
                                options: {
                                    sourceMap: false,
                                    shadowMode: false
                                }
                            },
                            /* config.module.rule('stylus').oneOf('vue').use('css-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/css-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false,
                                    importLoaders: 2
                                }
                            },
                            /* config.module.rule('stylus').oneOf('vue').use('postcss-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/postcss-loader/src/index.js',
                                options: {
                                    sourceMap: false,
                                    plugins: [
                                        function() { /* omitted long function */ }
                                    ]
                                }
                            },
                            /* config.module.rule('stylus').oneOf('vue').use('stylus-loader') */
                            {
                                loader: 'stylus-loader',
                                options: {
                                    sourceMap: false,
                                    preferPathResolver: 'webpack'
                                }
                            }
                        ]
                    },
                    /* config.module.rule('stylus').oneOf('normal-modules') */
                    {
                        test: /\.module\.\w+$/,
                        use: [
                            /* config.module.rule('stylus').oneOf('normal-modules').use('vue-style-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/vue-style-loader/index.js',
                                options: {
                                    sourceMap: false,
                                    shadowMode: false
                                }
                            },
                            /* config.module.rule('stylus').oneOf('normal-modules').use('css-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/css-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false,
                                    importLoaders: 2,
                                    modules: {
                                        localIdentName: '[name]_[local]_[hash:base64:5]'
                                    }
                                }
                            },
                            /* config.module.rule('stylus').oneOf('normal-modules').use('postcss-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/postcss-loader/src/index.js',
                                options: {
                                    sourceMap: false,
                                    plugins: [
                                        function() { /* omitted long function */ }
                                    ]
                                }
                            },
                            /* config.module.rule('stylus').oneOf('normal-modules').use('stylus-loader') */
                            {
                                loader: 'stylus-loader',
                                options: {
                                    sourceMap: false,
                                    preferPathResolver: 'webpack'
                                }
                            }
                        ]
                    },
                    /* config.module.rule('stylus').oneOf('normal') */
                    {
                        use: [
                            /* config.module.rule('stylus').oneOf('normal').use('vue-style-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/vue-style-loader/index.js',
                                options: {
                                    sourceMap: false,
                                    shadowMode: false
                                }
                            },
                            /* config.module.rule('stylus').oneOf('normal').use('css-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/css-loader/dist/cjs.js',
                                options: {
                                    sourceMap: false,
                                    importLoaders: 2
                                }
                            },
                            /* config.module.rule('stylus').oneOf('normal').use('postcss-loader') */
                            {
                                loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/postcss-loader/src/index.js',
                                options: {
                                    sourceMap: false,
                                    plugins: [
                                        function() { /* omitted long function */ }
                                    ]
                                }
                            },
                            /* config.module.rule('stylus').oneOf('normal').use('stylus-loader') */
                            {
                                loader: 'stylus-loader',
                                options: {
                                    sourceMap: false,
                                    preferPathResolver: 'webpack'
                                }
                            }
                        ]
                    }
                ]
            },
            /* config.module.rule('js') */
            {
                test: /\.m?jsx?$/,
                exclude: [
                    function() { /* omitted long function */ }
                ],
                use: [
                    /* config.module.rule('js').use('cache-loader') */
                    {
                        loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/cache-loader/dist/cjs.js',
                        options: {
                            cacheDirectory: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/.cache/babel-loader',
                            cacheIdentifier: '38241cf1'
                        }
                    },
                    /* config.module.rule('js').use('babel-loader') */
                    {
                        loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/babel-loader/lib/index.js'
                    }
                ]
            },
            /* config.module.rule('eslint') */
            {
                enforce: 'pre',
                test: /\.(vue|(j|t)sx?)$/,
                exclude: [
                    /node_modules/,
                    '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/@vue/cli-service/lib'
                ],
                use: [
                    /* config.module.rule('eslint').use('eslint-loader') */
                    {
                        loader: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/eslint-loader/index.js',
                        options: {
                            extensions: [
                                '.js',
                                '.jsx',
                                '.vue'
                            ],
                            cache: true,
                            cacheIdentifier: 'f6cd5dd2',
                            emitWarning: false,
                            emitError: false,
                            eslintPath: '/Users/marcuswang/Desktop/vue/mobile_pro/node_modules/eslint',
                            formatter: function() { /* omitted long function */ }
                        }
                    }
                ]
            }
        ]
    },
    optimization: {
        splitChunks: {
            cacheGroups: {
                vendors: {
                    name: 'chunk-vendors',
                    test: /[\\/]node_modules[\\/]/,
                    priority: -10,
                    chunks: 'initial'
                },
                common: {
                    name: 'chunk-common',
                    minChunks: 2,
                    priority: -20,
                    chunks: 'initial',
                    reuseExistingChunk: true
                }
            }
        },
        minimizer: [
            /* config.optimization.minimizer('terser') */
            new TerserPlugin({
                terserOptions: {
                    compress: {
                        arrows: false,
                        collapse_vars: false,
                        comparisons: false,
                        computed_props: false,
                        hoist_funs: false,
                        hoist_props: false,
                        hoist_vars: false,
                        inline: false,
                        loops: false,
                        negate_iife: false,
                        properties: false,
                        reduce_funcs: false,
                        reduce_vars: false,
                        switches: false,
                        toplevel: false,
                        typeofs: false,
                        booleans: true,
                        if_return: true,
                        sequences: true,
                        unused: true,
                        conditionals: true,
                        dead_code: true,
                        evaluate: true
                    },
                    mangle: {
                        safari10: true
                    }
                },
                sourceMap: true,
                cache: true,
                parallel: true,
                extractComments: false
            })
        ]
    },
    plugins: [
        /* config.plugin('vue-loader') */
        new VueLoaderPlugin(),
        /* config.plugin('define') */
        new DefinePlugin({
            'process.env': {
                NODE_ENV: '"development"',
                BASE_URL: '"/"'
            }
        }),
        /* config.plugin('case-sensitive-paths') */
        new CaseSensitivePathsPlugin(),
        /* config.plugin('friendly-errors') */
        new FriendlyErrorsWebpackPlugin({
            additionalTransformers: [
                function() { /* omitted long function */ }
            ],
            additionalFormatters: [
                function() { /* omitted long function */ }
            ]
        }),
        /* config.plugin('html') */
        new HtmlWebpackPlugin({
            templateParameters: function() { /* omitted long function */ },
            template: '/Users/marcuswang/Desktop/vue/mobile_pro/public/index.html'
        }),
        /* config.plugin('preload') */
        new PreloadPlugin({
            rel: 'preload',
            include: 'initial',
            fileBlacklist: [
                /\.map$/,
                /hot-update\.js$/
            ]
        }),
        /* config.plugin('prefetch') */
        new PreloadPlugin({
            rel: 'prefetch',
            include: 'asyncChunks'
        }),
        /* config.plugin('copy') */
        new CopyPlugin(
            [{
                from: '/Users/marcuswang/Desktop/vue/mobile_pro/public',
                to: '/Users/marcuswang/Desktop/vue/mobile_pro/dist',
                toType: 'dir',
                ignore: [
                    '.DS_Store',
                    {
                        glob: 'index.html',
                        matchBase: false
                    }
                ]
            }]
        )
    ],
    entry: {
        app: [
            './src/main.js'
        ]
    }
}